package com.yiyibook.service;

import com.github.pagehelper.PageInfo;
import com.yiyibook.entity.BookBigStyle;
import com.yiyibook.entity.BookSmallStyle;
import com.yiyibook.util.ResultEntity;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * 图书小类管理 服务
 *
 * @author yi.wu
 * @date 2019-10-12
 */
public interface BookSmallStyleService {

    /**
     * 根据图书大类查询图书小类
     * @param bookBigStyleId 图书大类Id
     * @return List
     * @author yi.wu 2019-10-14 16:33:20
     */
    List<BookSmallStyle> getAllByBigStyleId(Integer bookBigStyleId);

    /**
     * 查询所有小类 通过 分页条件
     * @param pageInfo 分页信息对象
     * @param conditionMap 查询信息条件
     * @return com.yiyibook.util.ResultEntity<com.yiyibook.entity.BookSmallStyle> 查询结果集对象
     * @author yi.wu 2019-10-31
     */
    ResultEntity<BookSmallStyle> selectAllByCondition(PageInfo pageInfo, Map<String,String> conditionMap);

    /**
     * 添加图书小类 （允许有字段为null值）
     * @param record 图书小类对象
     * @return 添加的记录数
     * @author yi.wu 2019-11-01
     */
    int insertSelective(BookSmallStyle record);

    /**
     * 更新图书小类 （允许有字段为null值）
     * @param record 图书小类对象
     * @return 更新的记录数
     * @author yi.wu 2019-11-01
     */
    int updateByPrimaryKeySelective(BookSmallStyle record);

    /**
     * 删除图书小类
     * @param smallStyleId 图书小类id
     * @return 删除的记录数
     * @author yi.wu 2019-11-01
     */
    int deleteByPrimaryKey(Integer smallStyleId);

    /**
     * 删除部分图书小类
     * @param bookSmallStyleIds 图书小类id集合
     * @return int 返回被删除的记录数
     * @author yi.wu 2019-11-01 14:31:20
     */
    int deleteAnySmallStyleByIds(List<Integer> bookSmallStyleIds);

}
